package com.itheima.dao;

import com.github.pagehelper.Page;
import com.itheima.pojo.User;

import java.util.List;
import java.util.Map;

public interface UserDao {
    //根据用户名查询用户信息
    public User findByUsername(String username);
    //添加新的用户
    public void addNewUser(User user);
    //添加新的用户角色管理关系
    public void addNewUserAndRole(Map map);

    //条件查询
    public Page<User> findByCondition(String queryString);

    //根据用户id查询是否有关联数据
    public Long findCountInUserAndRole(Integer userId);

    //根据用户id删除用户
    public void deleteByUserId(Integer userId);

    //根据用户id 删除关联数据
    public void deleteUserAndRole(Integer userId);

    //根据id查询用户信息
    public User findById(Integer id);

    //根据用户id查询关联角色id集合
    public List<Integer> findRoleIds(Integer userId);


    //根据用户id更新用户基本信息
    public void updateUserById(User user);
}
